package exception02;

import java.io.IOException;
import java.util.zip.DataFormatException;

/*
* 编译时异常在继承中的使用规则:
*   1.如果父类中的方法声明一个异常,那么子类在重写该方法的时候,
*      可以不声明该异常或者声明该异常或者声明该异常的子类
*   2.如果父类中的方法声明多个异常,那么子类在重写该方法的时候,
*      可以声明父类异常的子集(包含空集)
*     {a,b} {a},{b},{a,b} 空集
*   3.如果父类没有声明异常,子类在重写该方法时也不能声明异常
* */
class Father{
    public void method01()throws Exception {

    }
    public void method02()throws Exception {

    }
    public void method03()throws Exception {

    }

    public void method04()throws DataFormatException,IOException{

    }
    public void method05()throws DataFormatException,IOException{

    }
    public void method06()throws DataFormatException,IOException{

    }
    public void method07(){

    }
}
class Son extends Father{
    @Override
    public void method01() {

    }

    @Override
    public void method02()throws Exception {

    }

    @Override
    public void method03()throws IOException {

    }

    @Override
    public void method04()throws DataFormatException,IOException{

    }

    @Override
    public void method05()throws IOException{

    }

    @Override
    public void method06(){

    }
  /*  @Override
    public void method07()throws Exception{

    }*/
}